草庐IT

node.js - nodejs异步的while

全部标签

javascript - 如何正确地将 jQuery 插件导入 Node.JS?

背景我是Node.JS的新手,但对JavaScript和jQuery非常有经验。我通过npminstalljquery安装jQuery没有问题,但是,在代码中引用插件是另一个挑战。我已经查看了thissimilarStackOverflowquestion,并且该解决方案似乎有效,但在我看来,每次需要插件时实例化“假”浏览器窗口并注入(inject)基于jQuery插件的函数可能不是最有效的方法。对我来说失败的特定插件linq.js(是的,我知道jslinq可通过npm获得,但它与linq.js不同!)。注意:我所指的插件不依赖于任何DOM元素;在我的例子中,它只是通过各种数据函数运行

javascript - 在 node.js express 中删除请求

是否可以使用Node.js和express来删除对特定路由的请求?IE。不返回http状态或任何header?我只想关闭连接。app.get('/drop',function(req,res){//howtodroptherequesthere}); 最佳答案 要关闭连接而不返回任何内容,您可以end()或destroy()底层套接字。app.get('/drop',function(req,res){req.socket.end();});我不认为有任何方法可以在您的一端断开连接,而是让客户端一直等待直到超时(即不发送FIN)。您

javascript - 在没有 I/O 的情况下,javascript(在浏览器中)的异步/ promise 是否有益?

我正在尝试为json-api找到一个好的反序列化器/反规范化器(事实证明这非常困难)。我遇到过几个示例,其中反序列化过程(基本上只是对关系进行反规范化和扁平化属性)被定义为异步函数。Here'sonesuchexample,但我发现了很多。现在,我对node/javascript的理解是它基于受I/O限制的系统,因此它的设计是操作应该是非阻塞的,以便其他操作可以在I/O期间进行调度,因此我们获取并发操作。然而,我不明白的是像这样的反序列化器中的用法。我们在反序列化时拥有完整的有效负载,没有任何I/O发生。我只能猜测作者假设关系查找可以同时发生,但是,由于javascript仍然是单线程

javascript - Node.js 源代码需要什么编码?

我进行了一些Google搜索,但得到的结果与编码字符串或文件有关。我可以编写我的Node.jsJavaScript源代码在UTF-8中吗?我可以在注释、字符串或变量名中使用非ASCII字符吗?ECMA-262似乎是requireUTF-16encoding,但Node.js不会运行UTF-16编码的.js文件。但是,它将运行UTF-8源代码并正确解释非ASCII字符。那么这是有意为之还是“意外”造成的?是否在某处指定了支持UTF-8源代码? 最佳答案 引用:http://mathiasbynens.be/notes/javascri

javascript - 如何仅在先前的异步测试通过后才运行 mocha 测试?

使用mochajavascript测试框架,我希望能够让多个测试(全部异步)仅在先前定义的测试通过后执行。我不想将这些测试相互嵌套。describe("BBController",function(){it("shouldsave",function(done){});it("shoulddelete",function(done){});}) 最佳答案 使用--bail选项。确保你至少使用mocha0.14.0。(我用旧版本尝试过但没有成功。)首先,mocha无需执行任何操作即可在前一个测试完成后运行测试。这就是mocha默认的工

javascript - mediaelement.js 自动播放在移动设备上不起作用

这个问题在这里已经有了答案:HowtoautoplayHTML5mp4videoonAndroid?(15个答案)关闭4年前。我正在使用mediaelement.js显示视频。我正在使用这段代码:$('video').mediaelementplayer({features:['playpause','progress','current','duration','tracks','volume','fullscreen'],});varplayer=newMediaElementPlayer('player1');player.play();当页面加载时,我想自动开始播放视频。这在桌

javascript - Backbone.js 和 mod 重写

所以我正在研究backbone,并且已经到了加载使用pushState的直接页面无法正常工作的地方。如果我尝试访问my.url.com/login,它会给我一个未找到的页面,因为该页面不存在。我有以下重写规则:RewriteEngineOnRewriteCond%{DOCUMENT_ROOT}%{REQUEST_FILENAME}!-fRewriteCond%{DOCUMENT_ROOT}%{REQUEST_FILENAME}!-dRewriteRule(.*)index.html[L,QSA]但是这似乎不起作用(认为我得到了一个错误的请求而不是找不到)。如何通过mod重写获取push

javascript - "Error loading Script"js错误可以忽略吗?

我有一个脚本来处理window.onerrors并将其推送到我的服务器。我看到一些只在Firefox中发生的“错误加载脚本”错误。我四处搜索,发现人们忽略了“错误加载脚本”错误。例如Cryptic"ScriptError."reportedinJavascriptinChromeandFirefoxFirefox:"Errorloadingscript"是否可以像上面那样安全地忽略这些错误?或者我应该只在Firefox中忽略? 最佳答案 如果忽略你的意思是隐藏,是的,可能。像这样引用你的代码:try{//putcodethatpro

javascript - require (require.js) 的多个实例可以很好地协同工作吗

我想我需要在一个页面中支持多个require实例,但在实现它时遇到了两个问题。我正在开发一项服务,该服务向外部客户端页面提供可嵌入的交互式对象。最重要的设计标准是易于嵌入,尽可能少地假设客户端环境,并在客户端页面的js/css世界中很好地发挥作用。客户端在他们的页面上添加一个脚本标签来加载加载器,然后他们使用一个内联脚本来加载他们想要的内容:special_require(["loader"],function(loader){loader.load({object:"objectname",target:"#where-i-want-it"//otherconfigsettings}

javascript - 如何防止默认触摸 hammer.js

如果用触摸设备点击anchor,我想阻止点击通过,但如果用鼠标点击则正常运行。原因是,在桌面上,您将鼠标悬停在anchor上以查看更多信息,然后单击以查看产品。在手机上,我希望第一次点击显示信息,第二次点击查看产品。我已经尝试了以下各种变体:$('article.productasidea.link').hammer().on('tap',function(ev){if(ev.gesture.pointerType=='touch'){ev.gesture.srcEvent.preventDefault();returnfalse;}});有没有人对此有任何想法?